ELMO: extending (sequential) languages with migratable objects-compiler support
نویسندگان
چکیده
EEcient task migration is an important feature in parallel and distributed programs, in particular to support checkpointing and recovery for fault tolerance. It is also very useful in distributed environments like networks of workstations where external loads are often unpredictable and dynamic in nature. We propose simple language extensions (ELMO) to existing sequential programming languages like C, Fortran or C++, that provide a object-based task-parallel execution model. Tasks may be dynamically created, are location transparent, and may be migrated or check-pointed transparently by the system. In this paper, ELMO's language features together with the requisite compiler support is presented.
منابع مشابه
Tool Support for Language Extensibility
During the last years, one can recognise a development towards application domain languages and extensible language models. Due to their extended expressiveness, these language models have considerable advantages over rigid general purpose languages. However, a complicating factor in the use of extensible language models are the conventional compiler construction techniques. Compilers construct...
متن کاملEncapsulation and Inheritance in Object-Orlented Programming Languages
Data abstraction is a useful form of modular programming. The behavior of an abstract data object is fully defined by a set of abstract operations defined on the object; the user of an object does not need to understand how these operations are implemented or how the object is represented. Objects in most object-oriented programming languages are abstract data objects. The e eternal interface o...
متن کاملMobile Network Objects
We describe extensions to the DEC SRC Modula-3 network objects system which support migration of network objects between address spaces. Unlike other mobile object systems, we use an existing programming language rather than inventing a new language with object mobility primitives, and we require no changes to the compiler, standard runtime library, or operating system. This paper details the d...
متن کاملThe compiler for the XMTC parallel language: Lessons for compiler developers and in-depth description
In this technical report, we present information on the XMTC compiler and language. We start by presenting the XMTC Memory Model and the issues we encountered when using GCC, the popular GNU compiler for C and other sequential languages, as the basis for a compiler for XMTC, a parallel language. These topics, along with some information on XMT specific optimizations were presented in [10]. Then...
متن کاملUsing Partial Evaluation in Re ective Concurrent Object - Oriented Languages
Parallel and distributed programs often have hardware/problem speci c optimizations for improving quality of the program such as e ciency and robustness. Those optimizations, unfortunately, degrade portability and re-usability as they are intertwined with the original algorithm description. Re ective languages, which provide the application programmer extensible and abstract implementation of t...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1997